package cn.chinaflame.pagodas.entity;

import java.util.Objects;
import javax.persistence.*;
/**
 * @author created by lbq
 * @date 2018年1月4日 下午2:31:09
 **/
@Entity
@Table(name = "pa_agent", schema = "pagoda", catalog = "")
public class PaAgent {
    private String id;
    private String loginId;
    private String loginPwd;
    private String name;
    private String mobile;
    private String email;
    private String idType;
    private String idNo;
    private String idSpeType;
    private String idSpeNo;
    private String provinceCode;
    private String provinceName;
    private String cityCode;
    private String cityName;
    private String areaCode;
    private String areaName;
    private String agentLevel;
    private String parentId;
    private String contractStartTime;
    private String contractEndTime;
    private String comment;
    private String bankCode;
    private String bankName;
    private String cardNumber;
    private String projectId;
    private String createtime;
    private String updatetime;

    @Id
    @Column(name = "id", nullable = false, length = 20)
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "login_id", nullable = false, length = 20)
    public String getLoginId() {
        return loginId;
    }

    public void setLoginId(String loginId) {
        this.loginId = loginId;
    }

    @Basic
    @Column(name = "login_pwd", nullable = false, length = 30)
    public String getLoginPwd() {
        return loginPwd;
    }

    public void setLoginPwd(String loginPwd) {
        this.loginPwd = loginPwd;
    }

    @Basic
    @Column(name = "name", nullable = true, length = 30)
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Basic
    @Column(name = "mobile", nullable = true, length = 15)
    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    @Basic
    @Column(name = "email", nullable = true, length = 20)
    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Basic
    @Column(name = "id_type", nullable = true, length = 1)
    public String getIdType() {
        return idType;
    }

    public void setIdType(String idType) {
        this.idType = idType;
    }

    @Basic
    @Column(name = "id_no", nullable = true, length = 20)
    public String getIdNo() {
        return idNo;
    }

    public void setIdNo(String idNo) {
        this.idNo = idNo;
    }

    @Basic
    @Column(name = "id_spe_type", nullable = true, length = 1)
    public String getIdSpeType() {
        return idSpeType;
    }

    public void setIdSpeType(String idSpeType) {
        this.idSpeType = idSpeType;
    }

    @Basic
    @Column(name = "id_spe_no", nullable = true, length = 20)
    public String getIdSpeNo() {
        return idSpeNo;
    }

    public void setIdSpeNo(String idSpeNo) {
        this.idSpeNo = idSpeNo;
    }

    @Basic
    @Column(name = "province_code", nullable = true, length = 10)
    public String getProvinceCode() {
        return provinceCode;
    }

    public void setProvinceCode(String provinceCode) {
        this.provinceCode = provinceCode;
    }

    @Basic
    @Column(name = "province_name", nullable = true, length = 20)
    public String getProvinceName() {
        return provinceName;
    }

    public void setProvinceName(String provinceName) {
        this.provinceName = provinceName;
    }

    @Basic
    @Column(name = "city_code", nullable = true, length = 10)
    public String getCityCode() {
        return cityCode;
    }

    public void setCityCode(String cityCode) {
        this.cityCode = cityCode;
    }

    @Basic
    @Column(name = "city_name", nullable = true, length = 20)
    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    @Basic
    @Column(name = "area_code", nullable = true, length = 10)
    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    @Basic
    @Column(name = "area_name", nullable = true, length = 20)
    public String getAreaName() {
        return areaName;
    }

    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }

    @Basic
    @Column(name = "agent_level", nullable = true, length = 1)
    public String getAgentLevel() {
        return agentLevel;
    }

    public void setAgentLevel(String agentLevel) {
        this.agentLevel = agentLevel;
    }

    @Basic
    @Column(name = "parent_id", nullable = true, length = 20)
    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    @Basic
    @Column(name = "contract_start_time", nullable = true)
    public String getContractStartTime() {
        return contractStartTime;
    }

    public void setContractStartTime(String contractStartTime) {
        this.contractStartTime = contractStartTime;
    }

    @Basic
    @Column(name = "contract_end_time", nullable = true)
    public String getContractEndTime() {
        return contractEndTime;
    }

    public void setContractEndTime(String contractEndTime) {
        this.contractEndTime = contractEndTime;
    }

    @Basic
    @Column(name = "comment", nullable = true, length = 100)
    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    @Basic
    @Column(name = "bank_code", nullable = true, length = 20)
    public String getBankCode() {
        return bankCode;
    }

    public void setBankCode(String bankCode) {
        this.bankCode = bankCode;
    }

    @Basic
    @Column(name = "bank_name", nullable = true, length = 50)
    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName;
    }

    @Basic
    @Column(name = "card_number", nullable = true, length = 30)
    public String getCardNumber() {
        return cardNumber;
    }

    public void setCardNumber(String cardNumber) {
        this.cardNumber = cardNumber;
    }

    @Basic
    @Column(name = "project_id", nullable = true, length = 30)
    public String getProjectId() {
        return projectId;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    @Basic
    @Column(name = "createtime", nullable = true)
    public String getCreatetime() {
        return createtime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

    @Basic
    @Column(name = "updatetime", nullable = true)
    public String getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(String updatetime) {
        this.updatetime = updatetime;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        PaAgent ywAgent = (PaAgent) o;
        return Objects.equals(id, ywAgent.id) &&
                Objects.equals(loginId, ywAgent.loginId) &&
                Objects.equals(loginPwd, ywAgent.loginPwd) &&
                Objects.equals(name, ywAgent.name) &&
                Objects.equals(mobile, ywAgent.mobile) &&
                Objects.equals(email, ywAgent.email) &&
                Objects.equals(idType, ywAgent.idType) &&
                Objects.equals(idNo, ywAgent.idNo) &&
                Objects.equals(idSpeType, ywAgent.idSpeType) &&
                Objects.equals(idSpeNo, ywAgent.idSpeNo) &&
                Objects.equals(provinceCode, ywAgent.provinceCode) &&
                Objects.equals(provinceName, ywAgent.provinceName) &&
                Objects.equals(cityCode, ywAgent.cityCode) &&
                Objects.equals(cityName, ywAgent.cityName) &&
                Objects.equals(areaCode, ywAgent.areaCode) &&
                Objects.equals(areaName, ywAgent.areaName) &&
                Objects.equals(agentLevel, ywAgent.agentLevel) &&
                Objects.equals(parentId, ywAgent.parentId) &&
                Objects.equals(contractStartTime, ywAgent.contractStartTime) &&
                Objects.equals(contractEndTime, ywAgent.contractEndTime) &&
                Objects.equals(comment, ywAgent.comment) &&
                Objects.equals(bankCode, ywAgent.bankCode) &&
                Objects.equals(bankName, ywAgent.bankName) &&
                Objects.equals(cardNumber, ywAgent.cardNumber) &&
                Objects.equals(createtime, ywAgent.createtime) &&
                Objects.equals(updatetime, ywAgent.updatetime);
    }

    @Override
    public int hashCode() {

        return Objects.hash(id, loginId, loginPwd, name, mobile, email, idType, idNo, idSpeType, idSpeNo, provinceCode, provinceName, cityCode, cityName, areaCode, areaName, agentLevel, parentId, contractStartTime, contractEndTime, comment, bankCode, bankName, cardNumber, createtime, updatetime);
    }
}
